#ifndef ZIGBEENEWCONTROLPROTOCOL_H
#define ZIGBEENEWCONTROLPROTOCOL_H

#include <QObject>
#include "Protocol/BaseProtocol.h"
#include "DataType/DataType.h"

class ZigbeeNewControlProtocol  : public BaseProtocol
{
    Q_OBJECT
public:
    explicit ZigbeeNewControlProtocol(QObject *parent = 0);
    QList<Package> parseData(QByteArray data);
    QByteArray generateData(Package package);

    enum FunctionCode
    {
        NewJoinData = 0x30,
        StateData = 0x51,
        QuitData  =0x41,
    };


private:
    enum CheckSteps
    {
        CHECK_HEAD,
        CHECK_END,
        CHECK_GetShortID,
        ChECK_GetLongID,
        CHECK_GetClusterID,
        CHECK_GetState,
        CHECK_GetDataLength,
        CHECK_GetData,
        CHECK_EndForNewNet,
    };

};
#endif // ZIGBEENEWCONTROLPROTOCOL_H
